package com.eco.fanliapp.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.eco.fanliapp.common.response.ServerResponse;
import com.eco.fanliapp.entity.AppCompany;
import com.github.pagehelper.PageInfo;

import java.util.HashMap;
import java.util.List;

/**
 * 公司 服务层
 * 
 * @author xiaoxx
 * @date 2019-05-12
 */
public interface IAppCompanyService extends IService<AppCompany>
{
	/**
     * 查询公司信息
     * 
     * @param companyId 公司ID
     * @return 公司信息
     */
	AppCompany selectAppCompanyById(Integer companyId);
	
//	/**
//     * 查询公司列表
//     *
//     * @param appCompany 公司信息
//     * @return 公司集合
//     */
//	List<AppCompany> selectAppCompanyList(AppCompany appCompany);
	
	/**
     * 新增公司
     * 
     * @param appCompany 公司信息
     * @return 结果
     */
	int insertAppCompany(AppCompany appCompany);
	
	/**
     * 修改公司
     * 
     * @param appCompany 公司信息
     * @return 结果
     */
	int updateAppCompany(AppCompany appCompany);
		
	/**
     * 删除公司信息
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
	int deleteAppCompanyByIds(String ids);

	/**
	 * 根据公司ID查询分公司信息
	 * @param companyId
	 * @param type 0实时从数据库1优先从redis
	 * @return
	 */
	AppCompany findtAppCompany(Integer companyId,int type);

	/**
	 * 根据用户ID查询分公司信息
	 * @param userId
	 * @return
	 */
	AppCompany findtAppCompany(Long userId);

	/**
	 * 
	 * @param hashMap
	 * @return
	 */
	ServerResponse<PageInfo> findCommpanyFourALL(HashMap<String, Object> hashMap);

	/**
	 *
	 * @return
	 */
	List<AppCompany> findCompanys(Integer companyType);

	/**
	 *
	 * @param hashMap
	 * @return
	 */
	ServerResponse findCommpany(HashMap<String, Object> hashMap);

	/**
	 *
	 * @param hashMap
	 * @return
	 */
	int updateCommpanyFour(HashMap<String, Object> hashMap);

	/**
	 *
	 * @param hashMap
	 * @return
	 */
	int insert(HashMap<String, Object> hashMap);

	/**
	 * 查询总公司
	 * @return
	 */
	AppCompany findCompanyAll();

	/**
	 * 根据当前邀请码查询对应公司
	 * @param string
	 * @return
	 */
	AppCompany findtAppCompanyInviteCode(String string);

}
